package com.lightkits.wms.domain.retireLib;

import com.lightkits.common.db.entity.BdTransaction;
import com.lightkits.common.db.entity.WmRequestLine;
import com.lightkits.common.db.entity.event.BdEvent;
import com.lightkits.common.db.entity.event.BdEventRecord;
import com.lightkits.framework.common.model.CheckResult;
import com.lightkits.wms.domain.retireLib.model.TransModel;

import java.util.List;

/**
 * @author jing.wei@hand-china.com
 * @date 2019/6/17 16:03
 **/
public interface CreateRetireEventParams {
    /**
     * 创建领料单头事件
     *
     * @param orgId    组织Id
     * @param workerId 员工Id
     * @return
     */
    CheckResult<BdEvent> createEvent(String orgId, String workerId);


    /**
     * 事件快照的创建
     *
     * @param objectType     事件对象类型
     * @param keyValue       事件关键值
     * @param objectId       事件对象ID
     * @param recordType     事件记录类型
     * @param snapShotRecord 事件快照记录，JSON格式保存
     * @return
     **/

    CheckResult<BdEventRecord> createEventRecord
    (String objectType,
     String keyValue,
     Long objectId,
     String recordType,
     String snapShotRecord);

//    /**
//     * 创建事务
//     *
//     * @param lineList 领料单行
//     * @param model    事务参数
//     * @return
//     */
//    CheckResult<List<BdTransaction>> createTranscation(List<WmRequestLine> lineList,
//                                                       TransModel model);
}
